[INFO] cloning repository https://github.com/virajshoor/CompiDotSpeed
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/virajshoor/CompiDotSpeed" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvirajshoor%2FCompiDotSpeed", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvirajshoor%2FCompiDotSpeed'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 662088697ccc28d370609e676fbfc6c406517bef
[INFO] fixing virajshoor/CompiDotSpeed against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvirajshoor%2FCompiDotSpeed" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/virajshoor/CompiDotSpeed
[INFO] finished tweaking git repo https://github.com/virajshoor/CompiDotSpeed
[INFO] tweaked toml for git repo https://github.com/virajshoor/CompiDotSpeed written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/virajshoor/CompiDotSpeed on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/virajshoor/CompiDotSpeed already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e
[INFO] running `Command { std: "docker" "start" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling zerocopy v0.8.37
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling zmij v1.0.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling stacker v0.1.22
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking similar v2.7.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking clap_builder v4.5.56
[INFO] [stderr]     Checking ariadne v0.4.1
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking insta v1.46.2
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling logos-codegen v0.14.4
[INFO] [stderr]    Compiling zerocopy-derive v0.8.37
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling logos-derive v0.14.4
[INFO] [stderr]    Compiling ar_archive_writer v0.5.1
[INFO] [stderr]     Checking logos v0.14.4
[INFO] [stderr]     Checking clap v4.5.56
[INFO] [stderr]    Compiling psm v0.1.29
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking chumsky v0.9.3
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking compidotspeed v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `compidotspeed`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs
[INFO] [stderr]  ::: src/lexer/mod.rs
[INFO] [stderr]  ::: src/lexer/token.rs
[INFO] [stderr]  ::: src/parser/expr.rs
[INFO] [stderr]  ::: src/parser/mod.rs
[INFO] [stderr]  ::: src/parser/pattern.rs
[INFO] [stderr]  ::: src/parser/types.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/lexer/token.rs:7:16
[INFO] [stderr]              |
[INFO] [stderr]            7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:12:7
[INFO] [stderr]               |
[INFO] [stderr]            12 |     #[regex(r"-?[0-9][0-9_]*", parse_int)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:13:7
[INFO] [stderr]               |
[INFO] [stderr]            13 |     #[regex(r"0x[0-9a-fA-F][0-9a-fA-F_]*", parse_hex)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:14:7
[INFO] [stderr]               |
[INFO] [stderr]            14 |     #[regex(r"0b[01][01_]*", parse_binary)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:15:7
[INFO] [stderr]               |
[INFO] [stderr]            15 |     #[regex(r"0o[0-7][0-7_]*", parse_octal)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:19:7
[INFO] [stderr]               |
[INFO] [stderr]            19 |     #[regex(r"-?[0-9][0-9_]*\.[0-9][0-9_]*([eE][+-]?[0-9]+)?", parse_float)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[regex(r"-?[0-9][0-9_]*[eE][+-]?[0-9]+", parse_float)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:24:7
[INFO] [stderr]               |
[INFO] [stderr]            24 |     #[regex(r#""([^"\\]|\\.)*""#, parse_string)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:28:7
[INFO] [stderr]               |
[INFO] [stderr]            28 |     #[regex(r"'([^'\\]|\\.)'", parse_char)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("let")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("fun")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("if")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("then")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("else")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("match")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:58:7
[INFO] [stderr]               |
[INFO] [stderr]            58 |     #[token("with")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:62:7
[INFO] [stderr]               |
[INFO] [stderr]            62 |     #[token("type")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:66:7
[INFO] [stderr]               |
[INFO] [stderr]            66 |     #[token("module")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:70:7
[INFO] [stderr]               |
[INFO] [stderr]            70 |     #[token("import")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:74:7
[INFO] [stderr]               |
[INFO] [stderr]            74 |     #[token("export")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:78:7
[INFO] [stderr]               |
[INFO] [stderr]            78 |     #[token("as")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:82:7
[INFO] [stderr]               |
[INFO] [stderr]            82 |     #[token("in")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:88:7
[INFO] [stderr]               |
[INFO] [stderr]            88 |     #[token("say")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:92:7
[INFO] [stderr]               |
[INFO] [stderr]            92 |     #[token("ask")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:96:7
[INFO] [stderr]               |
[INFO] [stderr]            96 |     #[token("panic")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:102:7
[INFO] [stderr]                |
[INFO] [stderr]            102 |     #[token("true")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:106:7
[INFO] [stderr]                |
[INFO] [stderr]            106 |     #[token("false")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:112:7
[INFO] [stderr]                |
[INFO] [stderr]            112 |     #[token("Some")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:116:7
[INFO] [stderr]                |
[INFO] [stderr]            116 |     #[token("None")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:120:7
[INFO] [stderr]                |
[INFO] [stderr]            120 |     #[token("Ok")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:124:7
[INFO] [stderr]                |
[INFO] [stderr]            124 |     #[token("Err")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:130:7
[INFO] [stderr]                |
[INFO] [stderr]            130 |     #[token("and")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:134:7
[INFO] [stderr]                |
[INFO] [stderr]            134 |     #[token("or")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:138:7
[INFO] [stderr]                |
[INFO] [stderr]            138 |     #[token("not")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:142:7
[INFO] [stderr]                |
[INFO] [stderr]            142 |     #[token("is")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:146:7
[INFO] [stderr]                |
[INFO] [stderr]            146 |     #[token("isnt")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:152:7
[INFO] [stderr]                |
[INFO] [stderr]            152 |     #[token("+")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:156:7
[INFO] [stderr]                |
[INFO] [stderr]            156 |     #[token("-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:160:7
[INFO] [stderr]                |
[INFO] [stderr]            160 |     #[token("*")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:164:7
[INFO] [stderr]                |
[INFO] [stderr]            164 |     #[token("/")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:168:7
[INFO] [stderr]                |
[INFO] [stderr]            168 |     #[token("//")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:172:7
[INFO] [stderr]                |
[INFO] [stderr]            172 |     #[token("%")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:176:7
[INFO] [stderr]                |
[INFO] [stderr]            176 |     #[token("**")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:182:7
[INFO] [stderr]                |
[INFO] [stderr]            182 |     #[token("==")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:186:7
[INFO] [stderr]                |
[INFO] [stderr]            186 |     #[token("!=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:190:7
[INFO] [stderr]                |
[INFO] [stderr]            190 |     #[token("<")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:194:7
[INFO] [stderr]                |
[INFO] [stderr]            194 |     #[token(">")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:198:7
[INFO] [stderr]                |
[INFO] [stderr]            198 |     #[token("<=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:202:7
[INFO] [stderr]                |
[INFO] [stderr]            202 |     #[token(">=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:208:7
[INFO] [stderr]                |
[INFO] [stderr]            208 |     #[token("&&")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:212:7
[INFO] [stderr]                |
[INFO] [stderr]            212 |     #[token("||")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:216:7
[INFO] [stderr]                |
[INFO] [stderr]            216 |     #[token("!")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:222:7
[INFO] [stderr]                |
[INFO] [stderr]            222 |     #[token("::")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:226:7
[INFO] [stderr]                |
[INFO] [stderr]            226 |     #[token("++")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:232:7
[INFO] [stderr]                |
[INFO] [stderr]            232 |     #[token("|>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:236:7
[INFO] [stderr]                |
[INFO] [stderr]            236 |     #[token("<|")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:240:7
[INFO] [stderr]                |
[INFO] [stderr]            240 |     #[token(">>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:244:7
[INFO] [stderr]                |
[INFO] [stderr]            244 |     #[token("<<")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:250:7
[INFO] [stderr]                |
[INFO] [stderr]            250 |     #[token("..")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:254:7
[INFO] [stderr]                |
[INFO] [stderr]            254 |     #[token("..=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:260:7
[INFO] [stderr]                |
[INFO] [stderr]            260 |     #[token("->")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:264:7
[INFO] [stderr]                |
[INFO] [stderr]            264 |     #[token("=>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:270:7
[INFO] [stderr]                |
[INFO] [stderr]            270 |     #[token("(")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:274:7
[INFO] [stderr]                |
[INFO] [stderr]            274 |     #[token(")")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:278:7
[INFO] [stderr]                |
[INFO] [stderr]            278 |     #[token("[")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:282:7
[INFO] [stderr]                |
[INFO] [stderr]            282 |     #[token("]")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:286:7
[INFO] [stderr]                |
[INFO] [stderr]            286 |     #[token("{")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:290:7
[INFO] [stderr]                |
[INFO] [stderr]            290 |     #[token("}")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:296:7
[INFO] [stderr]                |
[INFO] [stderr]            296 |     #[token(",")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:300:7
[INFO] [stderr]                |
[INFO] [stderr]            300 |     #[token(".")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:304:7
[INFO] [stderr]                |
[INFO] [stderr]            304 |     #[token(":")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:308:7
[INFO] [stderr]                |
[INFO] [stderr]            308 |     #[token("|")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:312:7
[INFO] [stderr]                |
[INFO] [stderr]            312 |     #[token("_", priority = 3)]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:316:7
[INFO] [stderr]                |
[INFO] [stderr]            316 |     #[token("=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:320:7
[INFO] [stderr]                |
[INFO] [stderr]            320 |     #[token("\\")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:324:7
[INFO] [stderr]                |
[INFO] [stderr]            324 |     #[token("<-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:330:7
[INFO] [stderr]                |
[INFO] [stderr]            330 |     #[regex(r"[a-z][a-zA-Z0-9_]*'?", |lex| lex.slice().to_string())]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:334:7
[INFO] [stderr]                |
[INFO] [stderr]            334 |     #[regex(r"[A-Z][a-zA-Z0-9_]*'?", |lex| lex.slice().to_string())]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:340:7
[INFO] [stderr]                |
[INFO] [stderr]            340 |     #[regex(r"--[^\n]*")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:344:7
[INFO] [stderr]                |
[INFO] [stderr]            344 |     #[token("{-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:348:7
[INFO] [stderr]                |
[INFO] [stderr]            348 |     #[token("-}")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:352:7
[INFO] [stderr]                |
[INFO] [stderr]            352 |     #[regex(r"[ \t]+", logos::skip)]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:356:7
[INFO] [stderr]                |
[INFO] [stderr]            356 |     #[regex(r"\n|\r\n")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:567:20
[INFO] [stderr]                |
[INFO] [stderr]            567 | fn parse_int(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:572:20
[INFO] [stderr]                |
[INFO] [stderr]            572 | fn parse_hex(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:577:23
[INFO] [stderr]                |
[INFO] [stderr]            577 | fn parse_binary(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                       ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:582:22
[INFO] [stderr]                |
[INFO] [stderr]            582 | fn parse_octal(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:587:22
[INFO] [stderr]                |
[INFO] [stderr]            587 | fn parse_float(lex: &logos::Lexer<Token>) -> Option<f64> {
[INFO] [stderr]                |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:592:23
[INFO] [stderr]                |
[INFO] [stderr]            592 | fn parse_string(lex: &logos::Lexer<Token>) -> Option<String> {
[INFO] [stderr]                |                       ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:600:21
[INFO] [stderr]                |
[INFO] [stderr]            600 | fn parse_char(lex: &logos::Lexer<Token>) -> Option<char> {
[INFO] [stderr]                |                     ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:34:1
[INFO] [stderr]               |
[INFO] [stderr]            34 | pub struct Lexer<'src> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:170:21
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 for gen in generators {
[INFO] [stdout]     |                     ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout]     = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.visit_generator(gen);
[INFO] [stdout]     |                                          ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, gen: &Generator) {
[INFO] [stdout]     |                                   ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |               ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:14:5
[INFO] [stderr]               |
[INFO] [stderr]            14 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:41:12
[INFO] [stderr]               |
[INFO] [stderr]            41 | impl<'src> Lexer<'src> {
[INFO] [stderr]               |            ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:218:5
[INFO] [stderr]                |
[INFO] [stderr]            218 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:215:25
[INFO] [stderr]                |
[INFO] [stderr]            215 | impl<'src> Iterator for Lexer<'src> {
[INFO] [stderr]                |                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:43:38
[INFO] [stderr]               |
[INFO] [stderr]            43 |     pub fn new(source: &'src str) -> Self {
[INFO] [stderr]               |                                      ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:53:19
[INFO] [stderr]               |
[INFO] [stderr]            53 |     pub fn source(&self) -> &'src str {
[INFO] [stderr]               |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:58:25
[INFO] [stderr]               |
[INFO] [stderr]            58 |     pub fn tokenize(mut self) -> (Vec<SpannedToken>, Vec<CompileError>) {
[INFO] [stderr]               |                         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:78:23
[INFO] [stderr]               |
[INFO] [stderr]            78 |     pub fn next_token(&mut self) -> Option<SpannedToken> {
[INFO] [stderr]               |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:123:17
[INFO] [stderr]                |
[INFO] [stderr]            123 |     pub fn peek(&mut self) -> Option<&SpannedToken> {
[INFO] [stderr]                |                 ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:131:19
[INFO] [stderr]                |
[INFO] [stderr]            131 |     pub fn errors(&self) -> &[CompileError] {
[INFO] [stderr]                |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:136:24
[INFO] [stderr]                |
[INFO] [stderr]            136 |     pub fn take_errors(&mut self) -> Vec<CompileError> {
[INFO] [stderr]                |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:141:31
[INFO] [stderr]                |
[INFO] [stderr]            141 |     fn skip_multiline_comment(&mut self, start_span: Span) -> CompileResult<()> {
[INFO] [stderr]                |                               ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:173:19
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn make_error(&self, span: Span, text: &str) -> CompileError {
[INFO] [stderr]                |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:218:13
[INFO] [stderr]                |
[INFO] [stderr]            218 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]                |             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:568:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            568 |     let s: String = lex.slice().chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:573:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            573 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:578:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            578 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:583:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            583 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:588:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            588 |     let s: String = lex.slice().chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:593:17
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            593 |     let s = lex.slice();
[INFO] [stderr]                |                 ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:601:17
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            601 |     let s = lex.slice();
[INFO] [stderr]                |                 ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |          ----- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Debug)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Clone` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |                 ----- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Clone)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Clone)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |                        --------- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(PartialEq)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:44:9
[INFO] [stderr]               |
[INFO] [stderr]            44 |         Self {
[INFO] [stderr]               |         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `token::Token` in the current scope
[INFO] [stderr]              --> src/lexer/mod.rs:46:27
[INFO] [stderr]               |
[INFO] [stderr]            46 |             inner: Token::lexer(source),
[INFO] [stderr]               |                           ^^^^^ variant, associated function, or constant not found in `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]               |
[INFO] [stderr]               = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]               = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                       candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:62:24
[INFO] [stderr]               |
[INFO] [stderr]            62 |             match self.next_token() {
[INFO] [stderr]               |                        ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]              --> src/lexer/mod.rs:64:34
[INFO] [stderr]               |
[INFO] [stderr]            64 |                     if tok.token == Token::Eof {
[INFO] [stderr]               |                        --------- ^^ ---------- token::Token
[INFO] [stderr]               |                        |
[INFO] [stderr]               |                        token::Token
[INFO] [stderr]               |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(PartialEq)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:84:36
[INFO] [stderr]               |
[INFO] [stderr]            84 |             let token = self.inner.next();
[INFO] [stderr]               |                                    ^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]               |
[INFO] [stderr]              ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]               |
[INFO] [stderr]            13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]               | ------------------------------------------------ doesn't satisfy `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]               |
[INFO] [stderr]               = note: the following trait bounds were not satisfied:
[INFO] [stderr]                       `token::Token: Logos<'_>`
[INFO] [stderr]                       which is required by `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]               |
[INFO] [stderr]            44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:85:46
[INFO] [stderr]               |
[INFO] [stderr]            85 |             let span = Span::from(self.inner.span());
[INFO] [stderr]               |                                              ^^^^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]               |
[INFO] [stderr]               = note: the following trait bounds were not satisfied:
[INFO] [stderr]                       `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]               |
[INFO] [stderr]            44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:94:42
[INFO] [stderr]               |
[INFO] [stderr]            94 |                     if let Err(e) = self.skip_multiline_comment(span) {
[INFO] [stderr]               |                                          ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:108:43
[INFO] [stderr]                |
[INFO] [stderr]            108 |                     let text = self.inner.slice();
[INFO] [stderr]                |                                           ^^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:109:38
[INFO] [stderr]                |
[INFO] [stderr]            109 |                     let error = self.make_error(span, text);
[INFO] [stderr]                |                                      ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:125:32
[INFO] [stderr]                |
[INFO] [stderr]            125 |             self.peeked = self.next_token();
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:145:30
[INFO] [stderr]                |
[INFO] [stderr]            145 |             match self.inner.next() {
[INFO] [stderr]                |                              ^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------ doesn't satisfy `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]                        which is required by `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:219:24
[INFO] [stderr]                |
[INFO] [stderr]            219 |         let tok = self.next_token()?;
[INFO] [stderr]                |                        ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]               --> src/lexer/mod.rs:220:22
[INFO] [stderr]                |
[INFO] [stderr]            220 |         if tok.token == Token::Eof {
[INFO] [stderr]                |            --------- ^^ ---------- token::Token
[INFO] [stderr]                |            |
[INFO] [stderr]                |            token::Token
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:327:47
[INFO] [stderr]                |
[INFO] [stderr]            327 |                 Ok(Expr::literal(Literal::Int(n), span))
[INFO] [stderr]                |                                  ------------ ^ expected `i64`, found `&i64`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:168:5
[INFO] [stderr]                |
[INFO] [stderr]            168 |     Int(i64),
[INFO] [stderr]                |     ^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            327 |                 Ok(Expr::literal(Literal::Int(*n), span))
[INFO] [stderr]                |                                               +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:331:49
[INFO] [stderr]                |
[INFO] [stderr]            331 |                 Ok(Expr::literal(Literal::Float(n), span))
[INFO] [stderr]                |                                  -------------- ^ expected `f64`, found `&f64`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:170:5
[INFO] [stderr]                |
[INFO] [stderr]            170 |     Float(f64),
[INFO] [stderr]                |     ^^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            331 |                 Ok(Expr::literal(Literal::Float(*n), span))
[INFO] [stderr]                |                                                 +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:335:50
[INFO] [stderr]                |
[INFO] [stderr]            335 |                 Ok(Expr::literal(Literal::String(s), span))
[INFO] [stderr]                |                                  --------------- ^ expected `String`, found `&String`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:176:5
[INFO] [stderr]                |
[INFO] [stderr]            176 |     String(String),
[INFO] [stderr]                |     ^^^^^^
[INFO] [stderr]            help: try using a conversion method
[INFO] [stderr]                |
[INFO] [stderr]            335 |                 Ok(Expr::literal(Literal::String(s.to_string()), span))
[INFO] [stderr]                |                                                   ++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:339:48
[INFO] [stderr]                |
[INFO] [stderr]            339 |                 Ok(Expr::literal(Literal::Char(c), span))
[INFO] [stderr]                |                                  ------------- ^ expected `char`, found `&char`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:174:5
[INFO] [stderr]                |
[INFO] [stderr]            174 |     Char(char),
[INFO] [stderr]                |     ^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            339 |                 Ok(Expr::literal(Literal::Char(*c), span))
[INFO] [stderr]                |                                                +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: `match` arms have incompatible types
[INFO] [stderr]               --> src/parser/expr.rs:360:36
[INFO] [stderr]                |
[INFO] [stderr]            358 |                   let name = match self.peek_token().clone() {
[INFO] [stderr]                |  ____________________________-
[INFO] [stderr]            359 | |                     Token::UpperIdent(n) => n,
[INFO] [stderr]                | |                                             - this is found to be of type `&String`
[INFO] [stderr]            360 | |                     Token::Some => "Some".to_string(),
[INFO] [stderr]                | |                                    ^^^^^^^^^^^^^^^^^^ expected `&String`, found `String`
[INFO] [stderr]            361 | |                     Token::None => "None".to_string(),
[INFO] [stderr]            ...   |
[INFO] [stderr]            364 | |                     _ => unreachable!(),
[INFO] [stderr]            365 | |                 };
[INFO] [stderr]                | |_________________- `match` arms have incompatible types
[INFO] [stderr]                |
[INFO] [stderr]            help: consider borrowing here
[INFO] [stderr]                |
[INFO] [stderr]            360 |                     Token::Some => &"Some".to_string(),
[INFO] [stderr]                |                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: `match` arms have incompatible types
[INFO] [stderr]              --> src/parser/pattern.rs:74:36
[INFO] [stderr]               |
[INFO] [stderr]            72 |                   let name = match self.peek_token().clone() {
[INFO] [stderr]               |  ____________________________-
[INFO] [stderr]            73 | |                     Token::UpperIdent(n) => n,
[INFO] [stderr]               | |                                             - this is found to be of type `&String`
[INFO] [stderr]            74 | |                     Token::Some => "Some".to_string(),
[INFO] [stderr]               | |                                    ^^^^^^^^^^^^^^^^^^ expected `&String`, found `String`
[INFO] [stderr]            75 | |                     Token::None => "None".to_string(),
[INFO] [stderr]            ...  |
[INFO] [stderr]            78 | |                     _ => unreachable!(),
[INFO] [stderr]            79 | |                 };
[INFO] [stderr]               | |_________________- `match` arms have incompatible types
[INFO] [stderr]               |
[INFO] [stderr]            help: consider borrowing here
[INFO] [stderr]               |
[INFO] [stderr]            74 |                     Token::Some => &"Some".to_string(),
[INFO] [stderr]               |                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:104:50
[INFO] [stderr]                |
[INFO] [stderr]            104 |                 Ok(Pattern::literal(Literal::Int(n), span))
[INFO] [stderr]                |                                     ------------ ^ expected `i64`, found `&i64`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:168:5
[INFO] [stderr]                |
[INFO] [stderr]            168 |     Int(i64),
[INFO] [stderr]                |     ^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            104 |                 Ok(Pattern::literal(Literal::Int(*n), span))
[INFO] [stderr]                |                                                  +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:108:52
[INFO] [stderr]                |
[INFO] [stderr]            108 |                 Ok(Pattern::literal(Literal::Float(n), span))
[INFO] [stderr]                |                                     -------------- ^ expected `f64`, found `&f64`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:170:5
[INFO] [stderr]                |
[INFO] [stderr]            170 |     Float(f64),
[INFO] [stderr]                |     ^^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            108 |                 Ok(Pattern::literal(Literal::Float(*n), span))
[INFO] [stderr]                |                                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:112:53
[INFO] [stderr]                |
[INFO] [stderr]            112 |                 Ok(Pattern::literal(Literal::String(s), span))
[INFO] [stderr]                |                                     --------------- ^ expected `String`, found `&String`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:176:5
[INFO] [stderr]                |
[INFO] [stderr]            176 |     String(String),
[INFO] [stderr]                |     ^^^^^^
[INFO] [stderr]            help: try using a conversion method
[INFO] [stderr]                |
[INFO] [stderr]            112 |                 Ok(Pattern::literal(Literal::String(s.to_string()), span))
[INFO] [stderr]                |                                                      ++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:116:51
[INFO] [stderr]                |
[INFO] [stderr]            116 |                 Ok(Pattern::literal(Literal::Char(c), span))
[INFO] [stderr]                |                                     ------------- ^ expected `char`, found `&char`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:174:5
[INFO] [stderr]                |
[INFO] [stderr]            174 |     Char(char),
[INFO] [stderr]                |     ^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            116 |                 Ok(Pattern::literal(Literal::Char(*c), span))
[INFO] [stderr]                |                                                   +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:29:21
[INFO] [stderr]               |
[INFO] [stderr]            29 |         let lexer = Lexer::new(source);
[INFO] [stderr]               |                     ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:29:21
[INFO] [stderr]               |
[INFO] [stderr]            29 |         let lexer = Lexer::new(source);
[INFO] [stderr]               |                     ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:30:38
[INFO] [stderr]               |
[INFO] [stderr]            30 |         let (tokens, errors) = lexer.tokenize();
[INFO] [stderr]               |                                      ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]              --> src/parser/types.rs:33:17
[INFO] [stderr]               |
[INFO] [stderr]            30 |         match self.peek_token().clone() {
[INFO] [stderr]               |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            33 |                 self.advance();
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            34 |                 let ident = Ident::new(name, span);
[INFO] [stderr]               |                                        ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]              --> src/parser/types.rs:65:17
[INFO] [stderr]               |
[INFO] [stderr]            30 |         match self.peek_token().clone() {
[INFO] [stderr]               |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            65 |                 self.advance();
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            66 |                 Ok(TypeExpr::var(name, span))
[INFO] [stderr]               |                                  ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]               --> src/parser/mod.rs:409:17
[INFO] [stderr]                |
[INFO] [stderr]            406 |         match self.peek_token().clone() {
[INFO] [stderr]                |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            409 |                 self.advance();
[INFO] [stderr]                |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            410 |                 Ok(Ident::new(name, span))
[INFO] [stderr]                |                               ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]               --> src/parser/mod.rs:427:17
[INFO] [stderr]                |
[INFO] [stderr]            424 |         match self.peek_token().clone() {
[INFO] [stderr]                |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            427 |                 self.advance();
[INFO] [stderr]                |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            428 |                 Ok(Ident::new(name, span))
[INFO] [stderr]                |                               ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 145 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0308, E0369, E0502, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr] error: errors present after applying fixes to crate `compidotspeed`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs
[INFO] [stderr]  ::: /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs
[INFO] [stderr]  ::: src/lexer/mod.rs
[INFO] [stderr]  ::: src/lexer/token.rs
[INFO] [stderr]  ::: src/parser/expr.rs
[INFO] [stderr]  ::: src/parser/mod.rs
[INFO] [stderr]  ::: src/parser/pattern.rs
[INFO] [stderr]  ::: src/parser/types.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/lexer/token.rs:7:16
[INFO] [stderr]              |
[INFO] [stderr]            7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:12:7
[INFO] [stderr]               |
[INFO] [stderr]            12 |     #[regex(r"-?[0-9][0-9_]*", parse_int)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:13:7
[INFO] [stderr]               |
[INFO] [stderr]            13 |     #[regex(r"0x[0-9a-fA-F][0-9a-fA-F_]*", parse_hex)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:14:7
[INFO] [stderr]               |
[INFO] [stderr]            14 |     #[regex(r"0b[01][01_]*", parse_binary)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:15:7
[INFO] [stderr]               |
[INFO] [stderr]            15 |     #[regex(r"0o[0-7][0-7_]*", parse_octal)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:19:7
[INFO] [stderr]               |
[INFO] [stderr]            19 |     #[regex(r"-?[0-9][0-9_]*\.[0-9][0-9_]*([eE][+-]?[0-9]+)?", parse_float)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[regex(r"-?[0-9][0-9_]*[eE][+-]?[0-9]+", parse_float)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:24:7
[INFO] [stderr]               |
[INFO] [stderr]            24 |     #[regex(r#""([^"\\]|\\.)*""#, parse_string)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:28:7
[INFO] [stderr]               |
[INFO] [stderr]            28 |     #[regex(r"'([^'\\]|\\.)'", parse_char)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("let")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("fun")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("if")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("then")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("else")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("match")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:58:7
[INFO] [stderr]               |
[INFO] [stderr]            58 |     #[token("with")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:62:7
[INFO] [stderr]               |
[INFO] [stderr]            62 |     #[token("type")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:66:7
[INFO] [stderr]               |
[INFO] [stderr]            66 |     #[token("module")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:70:7
[INFO] [stderr]               |
[INFO] [stderr]            70 |     #[token("import")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:74:7
[INFO] [stderr]               |
[INFO] [stderr]            74 |     #[token("export")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:78:7
[INFO] [stderr]               |
[INFO] [stderr]            78 |     #[token("as")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:82:7
[INFO] [stderr]               |
[INFO] [stderr]            82 |     #[token("in")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:88:7
[INFO] [stderr]               |
[INFO] [stderr]            88 |     #[token("say")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:92:7
[INFO] [stderr]               |
[INFO] [stderr]            92 |     #[token("ask")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/lexer/token.rs:96:7
[INFO] [stderr]               |
[INFO] [stderr]            96 |     #[token("panic")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Logos)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:102:7
[INFO] [stderr]                |
[INFO] [stderr]            102 |     #[token("true")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:106:7
[INFO] [stderr]                |
[INFO] [stderr]            106 |     #[token("false")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:112:7
[INFO] [stderr]                |
[INFO] [stderr]            112 |     #[token("Some")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:116:7
[INFO] [stderr]                |
[INFO] [stderr]            116 |     #[token("None")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:120:7
[INFO] [stderr]                |
[INFO] [stderr]            120 |     #[token("Ok")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:124:7
[INFO] [stderr]                |
[INFO] [stderr]            124 |     #[token("Err")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:130:7
[INFO] [stderr]                |
[INFO] [stderr]            130 |     #[token("and")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:134:7
[INFO] [stderr]                |
[INFO] [stderr]            134 |     #[token("or")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:138:7
[INFO] [stderr]                |
[INFO] [stderr]            138 |     #[token("not")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:142:7
[INFO] [stderr]                |
[INFO] [stderr]            142 |     #[token("is")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:146:7
[INFO] [stderr]                |
[INFO] [stderr]            146 |     #[token("isnt")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:152:7
[INFO] [stderr]                |
[INFO] [stderr]            152 |     #[token("+")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:156:7
[INFO] [stderr]                |
[INFO] [stderr]            156 |     #[token("-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:160:7
[INFO] [stderr]                |
[INFO] [stderr]            160 |     #[token("*")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:164:7
[INFO] [stderr]                |
[INFO] [stderr]            164 |     #[token("/")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:168:7
[INFO] [stderr]                |
[INFO] [stderr]            168 |     #[token("//")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:172:7
[INFO] [stderr]                |
[INFO] [stderr]            172 |     #[token("%")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:176:7
[INFO] [stderr]                |
[INFO] [stderr]            176 |     #[token("**")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:182:7
[INFO] [stderr]                |
[INFO] [stderr]            182 |     #[token("==")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:186:7
[INFO] [stderr]                |
[INFO] [stderr]            186 |     #[token("!=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:190:7
[INFO] [stderr]                |
[INFO] [stderr]            190 |     #[token("<")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:194:7
[INFO] [stderr]                |
[INFO] [stderr]            194 |     #[token(">")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:198:7
[INFO] [stderr]                |
[INFO] [stderr]            198 |     #[token("<=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:202:7
[INFO] [stderr]                |
[INFO] [stderr]            202 |     #[token(">=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:208:7
[INFO] [stderr]                |
[INFO] [stderr]            208 |     #[token("&&")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:212:7
[INFO] [stderr]                |
[INFO] [stderr]            212 |     #[token("||")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:216:7
[INFO] [stderr]                |
[INFO] [stderr]            216 |     #[token("!")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:222:7
[INFO] [stderr]                |
[INFO] [stderr]            222 |     #[token("::")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:226:7
[INFO] [stderr]                |
[INFO] [stderr]            226 |     #[token("++")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:232:7
[INFO] [stderr]                |
[INFO] [stderr]            232 |     #[token("|>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:236:7
[INFO] [stderr]                |
[INFO] [stderr]            236 |     #[token("<|")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:240:7
[INFO] [stderr]                |
[INFO] [stderr]            240 |     #[token(">>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:244:7
[INFO] [stderr]                |
[INFO] [stderr]            244 |     #[token("<<")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:250:7
[INFO] [stderr]                |
[INFO] [stderr]            250 |     #[token("..")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:254:7
[INFO] [stderr]                |
[INFO] [stderr]            254 |     #[token("..=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:260:7
[INFO] [stderr]                |
[INFO] [stderr]            260 |     #[token("->")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:264:7
[INFO] [stderr]                |
[INFO] [stderr]            264 |     #[token("=>")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:270:7
[INFO] [stderr]                |
[INFO] [stderr]            270 |     #[token("(")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:274:7
[INFO] [stderr]                |
[INFO] [stderr]            274 |     #[token(")")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:278:7
[INFO] [stderr]                |
[INFO] [stderr]            278 |     #[token("[")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:282:7
[INFO] [stderr]                |
[INFO] [stderr]            282 |     #[token("]")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:286:7
[INFO] [stderr]                |
[INFO] [stderr]            286 |     #[token("{")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:290:7
[INFO] [stderr]                |
[INFO] [stderr]            290 |     #[token("}")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:296:7
[INFO] [stderr]                |
[INFO] [stderr]            296 |     #[token(",")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:300:7
[INFO] [stderr]                |
[INFO] [stderr]            300 |     #[token(".")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:304:7
[INFO] [stderr]                |
[INFO] [stderr]            304 |     #[token(":")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:308:7
[INFO] [stderr]                |
[INFO] [stderr]            308 |     #[token("|")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:312:7
[INFO] [stderr]                |
[INFO] [stderr]            312 |     #[token("_", priority = 3)]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:316:7
[INFO] [stderr]                |
[INFO] [stderr]            316 |     #[token("=")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:320:7
[INFO] [stderr]                |
[INFO] [stderr]            320 |     #[token("\\")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:324:7
[INFO] [stderr]                |
[INFO] [stderr]            324 |     #[token("<-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:330:7
[INFO] [stderr]                |
[INFO] [stderr]            330 |     #[regex(r"[a-z][a-zA-Z0-9_]*'?", |lex| lex.slice().to_string())]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:334:7
[INFO] [stderr]                |
[INFO] [stderr]            334 |     #[regex(r"[A-Z][a-zA-Z0-9_]*'?", |lex| lex.slice().to_string())]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:340:7
[INFO] [stderr]                |
[INFO] [stderr]            340 |     #[regex(r"--[^\n]*")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:344:7
[INFO] [stderr]                |
[INFO] [stderr]            344 |     #[token("{-")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:348:7
[INFO] [stderr]                |
[INFO] [stderr]            348 |     #[token("-}")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:352:7
[INFO] [stderr]                |
[INFO] [stderr]            352 |     #[regex(r"[ \t]+", logos::skip)]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]               --> src/lexer/token.rs:356:7
[INFO] [stderr]                |
[INFO] [stderr]            356 |     #[regex(r"\n|\r\n")]
[INFO] [stderr]                |       ^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Logos)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:567:20
[INFO] [stderr]                |
[INFO] [stderr]            567 | fn parse_int(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:572:20
[INFO] [stderr]                |
[INFO] [stderr]            572 | fn parse_hex(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:577:23
[INFO] [stderr]                |
[INFO] [stderr]            577 | fn parse_binary(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                       ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:582:22
[INFO] [stderr]                |
[INFO] [stderr]            582 | fn parse_octal(lex: &logos::Lexer<Token>) -> Option<i64> {
[INFO] [stderr]                |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:587:22
[INFO] [stderr]                |
[INFO] [stderr]            587 | fn parse_float(lex: &logos::Lexer<Token>) -> Option<f64> {
[INFO] [stderr]                |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:592:23
[INFO] [stderr]                |
[INFO] [stderr]            592 | fn parse_string(lex: &logos::Lexer<Token>) -> Option<String> {
[INFO] [stderr]                |                       ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:600:21
[INFO] [stderr]                |
[INFO] [stderr]            600 | fn parse_char(lex: &logos::Lexer<Token>) -> Option<char> {
[INFO] [stderr]                |                     ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `logos::Lexer`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:34
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^ required by this bound in `Lexer`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:34:1
[INFO] [stderr]               |
[INFO] [stderr]            34 | pub struct Lexer<'src> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:14:5
[INFO] [stderr]               |
[INFO] [stderr]            14 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:41:12
[INFO] [stderr]               |
[INFO] [stderr]            41 | impl<'src> Lexer<'src> {
[INFO] [stderr]               |            ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:218:5
[INFO] [stderr]                |
[INFO] [stderr]            218 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:215:25
[INFO] [stderr]                |
[INFO] [stderr]            215 | impl<'src> Iterator for Lexer<'src> {
[INFO] [stderr]                |                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:43:38
[INFO] [stderr]               |
[INFO] [stderr]            43 |     pub fn new(source: &'src str) -> Self {
[INFO] [stderr]               |                                      ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:53:19
[INFO] [stderr]               |
[INFO] [stderr]            53 |     pub fn source(&self) -> &'src str {
[INFO] [stderr]               |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:58:25
[INFO] [stderr]               |
[INFO] [stderr]            58 |     pub fn tokenize(mut self) -> (Vec<SpannedToken>, Vec<CompileError>) {
[INFO] [stderr]               |                         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:78:23
[INFO] [stderr]               |
[INFO] [stderr]            78 |     pub fn next_token(&mut self) -> Option<SpannedToken> {
[INFO] [stderr]               |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:123:17
[INFO] [stderr]                |
[INFO] [stderr]            123 |     pub fn peek(&mut self) -> Option<&SpannedToken> {
[INFO] [stderr]                |                 ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:131:19
[INFO] [stderr]                |
[INFO] [stderr]            131 |     pub fn errors(&self) -> &[CompileError] {
[INFO] [stderr]                |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:136:24
[INFO] [stderr]                |
[INFO] [stderr]            136 |     pub fn take_errors(&mut self) -> Vec<CompileError> {
[INFO] [stderr]                |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:141:31
[INFO] [stderr]                |
[INFO] [stderr]            141 |     fn skip_multiline_comment(&mut self, start_span: Span) -> CompileResult<()> {
[INFO] [stderr]                |                               ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:173:19
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn make_error(&self, span: Span, text: &str) -> CompileError {
[INFO] [stderr]                |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:218:13
[INFO] [stderr]                |
[INFO] [stderr]            218 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]                |             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:568:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            568 |     let s: String = lex.slice().chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:573:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            573 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:578:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            578 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:583:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            583 |     let s: String = lex.slice()[2..].chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:588:25
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            588 |     let s: String = lex.slice().chars().filter(|c| *c != '_').collect();
[INFO] [stderr]                |                         ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:593:17
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            593 |     let s = lex.slice();
[INFO] [stderr]                |                 ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for reference `&logos::Lexer<'_, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/token.rs:601:17
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            601 |     let s = lex.slice();
[INFO] [stderr]                |                 ^^^^^ method cannot be called on `&logos::Lexer<'_, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |          ----- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Debug)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Clone` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |                 ----- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Clone)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(Clone)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]              --> src/lexer/mod.rs:23:5
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[derive(Debug, Clone, PartialEq)]
[INFO] [stderr]               |                        --------- in this derive macro expansion
[INFO] [stderr]            22 | pub struct SpannedToken {
[INFO] [stderr]            23 |     pub token: Token,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(PartialEq)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'src>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:44:9
[INFO] [stderr]               |
[INFO] [stderr]            44 |         Self {
[INFO] [stderr]               |         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'src>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `token::Token` in the current scope
[INFO] [stderr]              --> src/lexer/mod.rs:46:27
[INFO] [stderr]               |
[INFO] [stderr]            46 |             inner: Token::lexer(source),
[INFO] [stderr]               |                           ^^^^^ variant, associated function, or constant not found in `token::Token`
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]               |
[INFO] [stderr]               = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]               = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                       candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:62:24
[INFO] [stderr]               |
[INFO] [stderr]            62 |             match self.next_token() {
[INFO] [stderr]               |                        ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]              --> src/lexer/mod.rs:64:34
[INFO] [stderr]               |
[INFO] [stderr]            64 |                     if tok.token == Token::Eof {
[INFO] [stderr]               |                        --------- ^^ ---------- token::Token
[INFO] [stderr]               |                        |
[INFO] [stderr]               |                        token::Token
[INFO] [stderr]               |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 + #[derive(PartialEq)]
[INFO] [stderr]             9 | pub enum Token {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:84:36
[INFO] [stderr]               |
[INFO] [stderr]            84 |             let token = self.inner.next();
[INFO] [stderr]               |                                    ^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]               |
[INFO] [stderr]              ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]               |
[INFO] [stderr]            13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]               | ------------------------------------------------ doesn't satisfy `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]               |
[INFO] [stderr]               = note: the following trait bounds were not satisfied:
[INFO] [stderr]                       `token::Token: Logos<'_>`
[INFO] [stderr]                       which is required by `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]               |
[INFO] [stderr]            44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:85:46
[INFO] [stderr]               |
[INFO] [stderr]            85 |             let span = Span::from(self.inner.span());
[INFO] [stderr]               |                                              ^^^^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]               |
[INFO] [stderr]               = note: the following trait bounds were not satisfied:
[INFO] [stderr]                       `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]               |
[INFO] [stderr]            44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/lexer/mod.rs:94:42
[INFO] [stderr]               |
[INFO] [stderr]            94 |                     if let Err(e) = self.skip_multiline_comment(span) {
[INFO] [stderr]               |                                          ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `slice` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:108:43
[INFO] [stderr]                |
[INFO] [stderr]            108 |                     let text = self.inner.slice();
[INFO] [stderr]                |                                           ^^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:109:38
[INFO] [stderr]                |
[INFO] [stderr]            109 |                     let error = self.make_error(span, text);
[INFO] [stderr]                |                                      ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:125:32
[INFO] [stderr]                |
[INFO] [stderr]            125 |             self.peeked = self.next_token();
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'src, token::Token>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:145:30
[INFO] [stderr]                |
[INFO] [stderr]            145 |             match self.inner.next() {
[INFO] [stderr]                |                              ^^^^ method cannot be called on `logos::Lexer<'src, token::Token>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | -------------- doesn't satisfy `token::Token: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------ doesn't satisfy `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `token::Token: Logos<'_>`
[INFO] [stderr]                        which is required by `logos::Lexer<'src, token::Token>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:219:24
[INFO] [stderr]                |
[INFO] [stderr]            219 |         let tok = self.next_token()?;
[INFO] [stderr]                |                        ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `token::Token`
[INFO] [stderr]               --> src/lexer/mod.rs:220:22
[INFO] [stderr]                |
[INFO] [stderr]            220 |         if tok.token == Token::Eof {
[INFO] [stderr]                |            --------- ^^ ---------- token::Token
[INFO] [stderr]                |            |
[INFO] [stderr]                |            token::Token
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:233:9
[INFO] [stderr]                |
[INFO] [stderr]            233 |         Lexer::new(source)
[INFO] [stderr]                |         ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:233:9
[INFO] [stderr]                |
[INFO] [stderr]            233 |         Lexer::new(source)
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/lexer/mod.rs:234:14
[INFO] [stderr]                |
[INFO] [stderr]            234 |             .tokenize()
[INFO] [stderr]                |              ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `!=` cannot be applied to type `token::Token`
[INFO] [stderr]               --> src/lexer/mod.rs:238:28
[INFO] [stderr]                |
[INFO] [stderr]            238 |             .filter(|t| *t != Token::Eof)
[INFO] [stderr]                |                         -- ^^ ---------- token::Token
[INFO] [stderr]                |                         |
[INFO] [stderr]                |                         token::Token
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:244:9
[INFO] [stderr]                |
[INFO] [stderr]            244 |         assert_eq!(lex("42"), vec![Token::Int(42)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:244:9
[INFO] [stderr]                |
[INFO] [stderr]            244 |         assert_eq!(lex("42"), vec![Token::Int(42)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:244:9
[INFO] [stderr]                |
[INFO] [stderr]            244 |         assert_eq!(lex("42"), vec![Token::Int(42)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:245:9
[INFO] [stderr]                |
[INFO] [stderr]            245 |         assert_eq!(lex("3.14"), vec![Token::Float(3.14)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:245:9
[INFO] [stderr]                |
[INFO] [stderr]            245 |         assert_eq!(lex("3.14"), vec![Token::Float(3.14)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:245:9
[INFO] [stderr]                |
[INFO] [stderr]            245 |         assert_eq!(lex("3.14"), vec![Token::Float(3.14)]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:246:9
[INFO] [stderr]                |
[INFO] [stderr]            246 |         assert_eq!(lex("true"), vec![Token::True]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:246:9
[INFO] [stderr]                |
[INFO] [stderr]            246 |         assert_eq!(lex("true"), vec![Token::True]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:246:9
[INFO] [stderr]                |
[INFO] [stderr]            246 |         assert_eq!(lex("true"), vec![Token::True]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:247:9
[INFO] [stderr]                |
[INFO] [stderr]            247 |         assert_eq!(lex("false"), vec![Token::False]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:247:9
[INFO] [stderr]                |
[INFO] [stderr]            247 |         assert_eq!(lex("false"), vec![Token::False]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:247:9
[INFO] [stderr]                |
[INFO] [stderr]            247 |         assert_eq!(lex("false"), vec![Token::False]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:170:21
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 for gen in generators {
[INFO] [stdout]     |                     ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout]     = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.visit_generator(gen);
[INFO] [stdout]     |                                          ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, gen: &Generator) {
[INFO] [stdout]     |                                   ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stdout] warning: `gen` is a keyword in the 2024 edition
[INFO] [stdout]    --> src/ast/visit.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |               ^^^ help: you can use a raw identifier to stay compatible: `r#gen`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/gen-keyword.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, String, token::Token>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/lexer/token.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:252:9
[INFO] [stderr]                |
[INFO] [stderr]            252 | /         assert_eq!(
[INFO] [stderr]            253 | |             lex("+ - * /"),
[INFO] [stderr]            254 | |             vec![Token::Plus, Token::Minus, Token::Star, Token::Slash]
[INFO] [stderr]            255 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:252:9
[INFO] [stderr]                |
[INFO] [stderr]            252 | /         assert_eq!(
[INFO] [stderr]            253 | |             lex("+ - * /"),
[INFO] [stderr]            254 | |             vec![Token::Plus, Token::Minus, Token::Star, Token::Slash]
[INFO] [stderr]            255 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:252:9
[INFO] [stderr]                |
[INFO] [stderr]            252 | /         assert_eq!(
[INFO] [stderr]            253 | |             lex("+ - * /"),
[INFO] [stderr]            254 | |             vec![Token::Plus, Token::Minus, Token::Star, Token::Slash]
[INFO] [stderr]            255 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:256:9
[INFO] [stderr]                |
[INFO] [stderr]            256 | /         assert_eq!(
[INFO] [stderr]            257 | |             lex("|> <|"),
[INFO] [stderr]            258 | |             vec![Token::Pipe, Token::ReversePipe]
[INFO] [stderr]            259 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:256:9
[INFO] [stderr]                |
[INFO] [stderr]            256 | /         assert_eq!(
[INFO] [stderr]            257 | |             lex("|> <|"),
[INFO] [stderr]            258 | |             vec![Token::Pipe, Token::ReversePipe]
[INFO] [stderr]            259 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:256:9
[INFO] [stderr]                |
[INFO] [stderr]            256 | /         assert_eq!(
[INFO] [stderr]            257 | |             lex("|> <|"),
[INFO] [stderr]            258 | |             vec![Token::Pipe, Token::ReversePipe]
[INFO] [stderr]            259 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:264:9
[INFO] [stderr]                |
[INFO] [stderr]            264 | /         assert_eq!(
[INFO] [stderr]            265 | |             lex("let fun if then else match"),
[INFO] [stderr]            266 | |             vec![
[INFO] [stderr]            267 | |                 Token::Let,
[INFO] [stderr]            ...   |
[INFO] [stderr]            274 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:264:9
[INFO] [stderr]                |
[INFO] [stderr]            264 | /         assert_eq!(
[INFO] [stderr]            265 | |             lex("let fun if then else match"),
[INFO] [stderr]            266 | |             vec![
[INFO] [stderr]            267 | |                 Token::Let,
[INFO] [stderr]            ...   |
[INFO] [stderr]            274 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:264:9
[INFO] [stderr]                |
[INFO] [stderr]            264 | /         assert_eq!(
[INFO] [stderr]            265 | |             lex("let fun if then else match"),
[INFO] [stderr]            266 | |             vec![
[INFO] [stderr]            267 | |                 Token::Let,
[INFO] [stderr]            ...   |
[INFO] [stderr]            274 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:279:9
[INFO] [stderr]                |
[INFO] [stderr]            279 | /         assert_eq!(
[INFO] [stderr]            280 | |             lex("foo bar_baz camelCase"),
[INFO] [stderr]            281 | |             vec![
[INFO] [stderr]            282 | |                 Token::Ident("foo".to_string()),
[INFO] [stderr]            ...   |
[INFO] [stderr]            286 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:279:9
[INFO] [stderr]                |
[INFO] [stderr]            279 | /         assert_eq!(
[INFO] [stderr]            280 | |             lex("foo bar_baz camelCase"),
[INFO] [stderr]            281 | |             vec![
[INFO] [stderr]            282 | |                 Token::Ident("foo".to_string()),
[INFO] [stderr]            ...   |
[INFO] [stderr]            286 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:279:9
[INFO] [stderr]                |
[INFO] [stderr]            279 | /         assert_eq!(
[INFO] [stderr]            280 | |             lex("foo bar_baz camelCase"),
[INFO] [stderr]            281 | |             vec![
[INFO] [stderr]            282 | |                 Token::Ident("foo".to_string()),
[INFO] [stderr]            ...   |
[INFO] [stderr]            286 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:291:9
[INFO] [stderr]                |
[INFO] [stderr]            291 | /         assert_eq!(
[INFO] [stderr]            292 | |             lex(r#""hello""#),
[INFO] [stderr]            293 | |             vec![Token::String("hello".to_string())]
[INFO] [stderr]            294 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:291:9
[INFO] [stderr]                |
[INFO] [stderr]            291 | /         assert_eq!(
[INFO] [stderr]            292 | |             lex(r#""hello""#),
[INFO] [stderr]            293 | |             vec![Token::String("hello".to_string())]
[INFO] [stderr]            294 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:291:9
[INFO] [stderr]                |
[INFO] [stderr]            291 | /         assert_eq!(
[INFO] [stderr]            292 | |             lex(r#""hello""#),
[INFO] [stderr]            293 | |             vec![Token::String("hello".to_string())]
[INFO] [stderr]            294 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:295:9
[INFO] [stderr]                |
[INFO] [stderr]            295 | /         assert_eq!(
[INFO] [stderr]            296 | |             lex(r#""hello\nworld""#),
[INFO] [stderr]            297 | |             vec![Token::String("hello\nworld".to_string())]
[INFO] [stderr]            298 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:295:9
[INFO] [stderr]                |
[INFO] [stderr]            295 | /         assert_eq!(
[INFO] [stderr]            296 | |             lex(r#""hello\nworld""#),
[INFO] [stderr]            297 | |             vec![Token::String("hello\nworld".to_string())]
[INFO] [stderr]            298 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:295:9
[INFO] [stderr]                |
[INFO] [stderr]            295 | /         assert_eq!(
[INFO] [stderr]            296 | |             lex(r#""hello\nworld""#),
[INFO] [stderr]            297 | |             vec![Token::String("hello\nworld".to_string())]
[INFO] [stderr]            298 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:303:9
[INFO] [stderr]                |
[INFO] [stderr]            303 | /         assert_eq!(
[INFO] [stderr]            304 | |             lex("42 -- this is a comment"),
[INFO] [stderr]            305 | |             vec![Token::Int(42)]
[INFO] [stderr]            306 | |         );
[INFO] [stderr]                | |         ^
[INFO] [stderr]                | |         |
[INFO] [stderr]                | |_________Vec<token::Token>
[INFO] [stderr]                |           Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:303:9
[INFO] [stderr]                |
[INFO] [stderr]            303 | /         assert_eq!(
[INFO] [stderr]            304 | |             lex("42 -- this is a comment"),
[INFO] [stderr]            305 | |             vec![Token::Int(42)]
[INFO] [stderr]            306 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:303:9
[INFO] [stderr]                |
[INFO] [stderr]            303 | /         assert_eq!(
[INFO] [stderr]            304 | |             lex("42 -- this is a comment"),
[INFO] [stderr]            305 | |             vec![Token::Int(42)]
[INFO] [stderr]            306 | |         );
[INFO] [stderr]                | |_________^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:311:9
[INFO] [stderr]                |
[INFO] [stderr]            311 |         assert_eq!(lex("and"), vec![Token::And]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:311:9
[INFO] [stderr]                |
[INFO] [stderr]            311 |         assert_eq!(lex("and"), vec![Token::And]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:311:9
[INFO] [stderr]                |
[INFO] [stderr]            311 |         assert_eq!(lex("and"), vec![Token::And]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:312:9
[INFO] [stderr]                |
[INFO] [stderr]            312 |         assert_eq!(lex("or"), vec![Token::Or]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:312:9
[INFO] [stderr]                |
[INFO] [stderr]            312 |         assert_eq!(lex("or"), vec![Token::Or]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:312:9
[INFO] [stderr]                |
[INFO] [stderr]            312 |         assert_eq!(lex("or"), vec![Token::Or]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:313:9
[INFO] [stderr]                |
[INFO] [stderr]            313 |         assert_eq!(lex("not"), vec![Token::Not]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:313:9
[INFO] [stderr]                |
[INFO] [stderr]            313 |         assert_eq!(lex("not"), vec![Token::Not]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:313:9
[INFO] [stderr]                |
[INFO] [stderr]            313 |         assert_eq!(lex("not"), vec![Token::Not]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:314:9
[INFO] [stderr]                |
[INFO] [stderr]            314 |         assert_eq!(lex("is"), vec![Token::Is]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:314:9
[INFO] [stderr]                |
[INFO] [stderr]            314 |         assert_eq!(lex("is"), vec![Token::Is]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:314:9
[INFO] [stderr]                |
[INFO] [stderr]            314 |         assert_eq!(lex("is"), vec![Token::Is]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `Vec<token::Token>`
[INFO] [stderr]               --> src/lexer/mod.rs:315:9
[INFO] [stderr]                |
[INFO] [stderr]            315 |         assert_eq!(lex("isnt"), vec![Token::Isnt]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                |         |
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |         Vec<token::Token>
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `token::Token`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub enum Token {
[INFO] [stderr]                | ^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(PartialEq)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:315:9
[INFO] [stderr]                |
[INFO] [stderr]            315 |         assert_eq!(lex("isnt"), vec![Token::Isnt]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `token::Token` doesn't implement `Debug`
[INFO] [stderr]               --> src/lexer/mod.rs:315:9
[INFO] [stderr]                |
[INFO] [stderr]            315 |         assert_eq!(lex("isnt"), vec![Token::Isnt]);
[INFO] [stderr]                |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `token::Token`
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Debug` is implemented for `Vec<T, A>`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:4315:0
[INFO] [stderr]            help: consider annotating `token::Token` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/lexer/token.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 + #[derive(Debug)]
[INFO] [stderr]              9 | pub enum Token {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:327:47
[INFO] [stderr]                |
[INFO] [stderr]            327 |                 Ok(Expr::literal(Literal::Int(n), span))
[INFO] [stderr]                |                                  ------------ ^ expected `i64`, found `&i64`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:168:5
[INFO] [stderr]                |
[INFO] [stderr]            168 |     Int(i64),
[INFO] [stderr]                |     ^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            327 |                 Ok(Expr::literal(Literal::Int(*n), span))
[INFO] [stderr]                |                                               +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:331:49
[INFO] [stderr]                |
[INFO] [stderr]            331 |                 Ok(Expr::literal(Literal::Float(n), span))
[INFO] [stderr]                |                                  -------------- ^ expected `f64`, found `&f64`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:170:5
[INFO] [stderr]                |
[INFO] [stderr]            170 |     Float(f64),
[INFO] [stderr]                |     ^^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            331 |                 Ok(Expr::literal(Literal::Float(*n), span))
[INFO] [stderr]                |                                                 +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:335:50
[INFO] [stderr]                |
[INFO] [stderr]            335 |                 Ok(Expr::literal(Literal::String(s), span))
[INFO] [stderr]                |                                  --------------- ^ expected `String`, found `&String`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:176:5
[INFO] [stderr]                |
[INFO] [stderr]            176 |     String(String),
[INFO] [stderr]                |     ^^^^^^
[INFO] [stderr]            help: try using a conversion method
[INFO] [stderr]                |
[INFO] [stderr]            335 |                 Ok(Expr::literal(Literal::String(s.to_string()), span))
[INFO] [stderr]                |                                                   ++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/expr.rs:339:48
[INFO] [stderr]                |
[INFO] [stderr]            339 |                 Ok(Expr::literal(Literal::Char(c), span))
[INFO] [stderr]                |                                  ------------- ^ expected `char`, found `&char`
[INFO] [stderr]                |                                  |
[INFO] [stderr]                |                                  arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:174:5
[INFO] [stderr]                |
[INFO] [stderr]            174 |     Char(char),
[INFO] [stderr]                |     ^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            339 |                 Ok(Expr::literal(Literal::Char(*c), span))
[INFO] [stderr]                |                                                +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: `match` arms have incompatible types
[INFO] [stderr]               --> src/parser/expr.rs:360:36
[INFO] [stderr]                |
[INFO] [stderr]            358 |                   let name = match self.peek_token().clone() {
[INFO] [stderr]                |  ____________________________-
[INFO] [stderr]            359 | |                     Token::UpperIdent(n) => n,
[INFO] [stderr]                | |                                             - this is found to be of type `&String`
[INFO] [stderr]            360 | |                     Token::Some => "Some".to_string(),
[INFO] [stderr]                | |                                    ^^^^^^^^^^^^^^^^^^ expected `&String`, found `String`
[INFO] [stderr]            361 | |                     Token::None => "None".to_string(),
[INFO] [stderr]            ...   |
[INFO] [stderr]            364 | |                     _ => unreachable!(),
[INFO] [stderr]            365 | |                 };
[INFO] [stderr]                | |_________________- `match` arms have incompatible types
[INFO] [stderr]                |
[INFO] [stderr]            help: consider borrowing here
[INFO] [stderr]                |
[INFO] [stderr]            360 |                     Token::Some => &"Some".to_string(),
[INFO] [stderr]                |                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: `match` arms have incompatible types
[INFO] [stderr]              --> src/parser/pattern.rs:74:36
[INFO] [stderr]               |
[INFO] [stderr]            72 |                   let name = match self.peek_token().clone() {
[INFO] [stderr]               |  ____________________________-
[INFO] [stderr]            73 | |                     Token::UpperIdent(n) => n,
[INFO] [stderr]               | |                                             - this is found to be of type `&String`
[INFO] [stderr]            74 | |                     Token::Some => "Some".to_string(),
[INFO] [stderr]               | |                                    ^^^^^^^^^^^^^^^^^^ expected `&String`, found `String`
[INFO] [stderr]            75 | |                     Token::None => "None".to_string(),
[INFO] [stderr]            ...  |
[INFO] [stderr]            78 | |                     _ => unreachable!(),
[INFO] [stderr]            79 | |                 };
[INFO] [stderr]               | |_________________- `match` arms have incompatible types
[INFO] [stderr]               |
[INFO] [stderr]            help: consider borrowing here
[INFO] [stderr]               |
[INFO] [stderr]            74 |                     Token::Some => &"Some".to_string(),
[INFO] [stderr]               |                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:104:50
[INFO] [stderr]                |
[INFO] [stderr]            104 |                 Ok(Pattern::literal(Literal::Int(n), span))
[INFO] [stderr]                |                                     ------------ ^ expected `i64`, found `&i64`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:168:5
[INFO] [stderr]                |
[INFO] [stderr]            168 |     Int(i64),
[INFO] [stderr]                |     ^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            104 |                 Ok(Pattern::literal(Literal::Int(*n), span))
[INFO] [stderr]                |                                                  +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:108:52
[INFO] [stderr]                |
[INFO] [stderr]            108 |                 Ok(Pattern::literal(Literal::Float(n), span))
[INFO] [stderr]                |                                     -------------- ^ expected `f64`, found `&f64`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:170:5
[INFO] [stderr]                |
[INFO] [stderr]            170 |     Float(f64),
[INFO] [stderr]                |     ^^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            108 |                 Ok(Pattern::literal(Literal::Float(*n), span))
[INFO] [stderr]                |                                                    +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:112:53
[INFO] [stderr]                |
[INFO] [stderr]            112 |                 Ok(Pattern::literal(Literal::String(s), span))
[INFO] [stderr]                |                                     --------------- ^ expected `String`, found `&String`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:176:5
[INFO] [stderr]                |
[INFO] [stderr]            176 |     String(String),
[INFO] [stderr]                |     ^^^^^^
[INFO] [stderr]            help: try using a conversion method
[INFO] [stderr]                |
[INFO] [stderr]            112 |                 Ok(Pattern::literal(Literal::String(s.to_string()), span))
[INFO] [stderr]                |                                                      ++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> src/parser/pattern.rs:116:51
[INFO] [stderr]                |
[INFO] [stderr]            116 |                 Ok(Pattern::literal(Literal::Char(c), span))
[INFO] [stderr]                |                                     ------------- ^ expected `char`, found `&char`
[INFO] [stderr]                |                                     |
[INFO] [stderr]                |                                     arguments to this enum variant are incorrect
[INFO] [stderr]                |
[INFO] [stderr]            note: tuple variant defined here
[INFO] [stderr]               --> src/ast/mod.rs:174:5
[INFO] [stderr]                |
[INFO] [stderr]            174 |     Char(char),
[INFO] [stderr]                |     ^^^^
[INFO] [stderr]            help: consider dereferencing the borrow
[INFO] [stderr]                |
[INFO] [stderr]            116 |                 Ok(Pattern::literal(Literal::Char(*c), span))
[INFO] [stderr]                |                                                   +
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:29:21
[INFO] [stderr]               |
[INFO] [stderr]            29 |         let lexer = Lexer::new(source);
[INFO] [stderr]               |                     ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:29:21
[INFO] [stderr]               |
[INFO] [stderr]            29 |         let lexer = Lexer::new(source);
[INFO] [stderr]               |                     ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `token::Token: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:30:38
[INFO] [stderr]               |
[INFO] [stderr]            30 |         let (tokens, errors) = lexer.tokenize();
[INFO] [stderr]               |                                      ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `token::Token`
[INFO] [stderr]              --> src/lexer/token.rs:8:1
[INFO] [stderr]               |
[INFO] [stderr]             8 | pub enum Token {
[INFO] [stderr]               | ^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]              --> src/parser/types.rs:33:17
[INFO] [stderr]               |
[INFO] [stderr]            30 |         match self.peek_token().clone() {
[INFO] [stderr]               |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            33 |                 self.advance();
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            34 |                 let ident = Ident::new(name, span);
[INFO] [stderr]               |                                        ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]              --> src/parser/types.rs:65:17
[INFO] [stderr]               |
[INFO] [stderr]            30 |         match self.peek_token().clone() {
[INFO] [stderr]               |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            65 |                 self.advance();
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            66 |                 Ok(TypeExpr::var(name, span))
[INFO] [stderr]               |                                  ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]               --> src/parser/mod.rs:409:17
[INFO] [stderr]                |
[INFO] [stderr]            406 |         match self.peek_token().clone() {
[INFO] [stderr]                |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            409 |                 self.advance();
[INFO] [stderr]                |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            410 |                 Ok(Ident::new(name, span))
[INFO] [stderr]                |                               ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0502]: cannot borrow `*self` as mutable because it is also borrowed as immutable
[INFO] [stderr]               --> src/parser/mod.rs:427:17
[INFO] [stderr]                |
[INFO] [stderr]            424 |         match self.peek_token().clone() {
[INFO] [stderr]                |               ---- immutable borrow occurs here
[INFO] [stderr]            ...
[INFO] [stderr]            427 |                 self.advance();
[INFO] [stderr]                |                 ^^^^^^^^^^^^^^ mutable borrow occurs here
[INFO] [stderr]            428 |                 Ok(Ident::new(name, span))
[INFO] [stderr]                |                               ---- immutable borrow later used here
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 197 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0308, E0369, E0502, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.65s
[INFO] [stderr] crater-edition-check: compidotspeed v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking compidotspeed v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:170:21
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 for gen in generators {
[INFO] [stdout]     |                     ^^^ expected identifier, found reserved keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.visit_generator(gen);
[INFO] [stdout]     |                                          ^^^ expected expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, gen: &Generator) {
[INFO] [stdout]     |                                   ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, r#gen: &Generator) {
[INFO] [stdout]     |                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `;`, `?`, `}`, or an operator, found `=>`
[INFO] [stdout]    --> src/ast/visit.rs:270:51
[INFO] [stdout]     |
[INFO] [stdout] 270 |             Generator::Bind { pattern, iterable } => {
[INFO] [stdout]     |                                                   ^^ expected one of `.`, `;`, `?`, `}`, or an operator
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to write a "greater than or equal to" comparison
[INFO] [stdout]     |
[INFO] [stdout] 270 -             Generator::Bind { pattern, iterable } => {
[INFO] [stdout] 270 +             Generator::Bind { pattern, iterable } >= {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `?`, `{`, or an operator, found `}`
[INFO] [stdout]    --> src/ast/visit.rs:282:5
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |         ----- while parsing this `match` expression
[INFO] [stdout] ...
[INFO] [stdout] 281 |         }
[INFO] [stdout]     |          - expected one of `.`, `?`, `{`, or an operator
[INFO] [stdout] 282 |     }
[INFO] [stdout]     |     ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:170:21
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 for gen in generators {
[INFO] [stdout]     |                     ^^^ expected identifier, found reserved keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:171:42
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     self.visit_generator(gen);
[INFO] [stdout]     |                                          ^^^ expected expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/ast/visit.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, gen: &Generator) {
[INFO] [stdout]     |                                   ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn visit_generator(&mut self, r#gen: &Generator) {
[INFO] [stdout]     |                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `;`, `?`, `}`, or an operator, found `=>`
[INFO] [stdout]    --> src/ast/visit.rs:270:51
[INFO] [stdout]     |
[INFO] [stdout] 270 |             Generator::Bind { pattern, iterable } => {
[INFO] [stdout]     |                                                   ^^ expected one of `.`, `;`, `?`, `}`, or an operator
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to write a "greater than or equal to" comparison
[INFO] [stdout]     |
[INFO] [stdout] 270 -             Generator::Bind { pattern, iterable } => {
[INFO] [stdout] 270 +             Generator::Bind { pattern, iterable } >= {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `?`, `{`, or an operator, found `}`
[INFO] [stdout]    --> src/ast/visit.rs:282:5
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |         ----- while parsing this `match` expression
[INFO] [stdout] ...
[INFO] [stdout] 281 |         }
[INFO] [stdout]     |          - expected one of `.`, `?`, `{`, or an operator
[INFO] [stdout] 282 |     }
[INFO] [stdout]     |     ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: gen blocks are experimental
[INFO] [stdout]    --> src/ast/visit.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
[INFO] [stdout]     = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
[INFO] [stdout]     = note: this compiler was built on 2026-06-16; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]   --> src/error/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use thiserror::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]  --> src/parser/pattern.rs:5:49
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::{CompileError, CompileResult, Span};
[INFO] [stdout]   |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `expr::*`
[INFO] [stdout]   --> src/parser/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use expr::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pattern::*`
[INFO] [stdout]   --> src/parser/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use pattern::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::*`
[INFO] [stdout]   --> src/parser/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use types::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypeVar`
[INFO] [stdout]  --> src/types/infer.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::{Type, TypeVar, Scheme, TypeEnv, Substitution, TypeChecker};
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `infer::*`
[INFO] [stdout]   --> src/types/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use infer::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]   --> src/types/mod.rs:21:62
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::error::{CompileError, CompileResult, Diagnostics, Span};
[INFO] [stdout]    |                                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Type`
[INFO] [stdout]  --> src/codegen/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::TypeEnv`
[INFO] [stdout]    --> src/codegen/mod.rs:564:9
[INFO] [stdout]     |
[INFO] [stdout] 564 |     use crate::types::TypeEnv;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: gen blocks are experimental
[INFO] [stdout]    --> src/ast/visit.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout] 269 |         match gen {
[INFO] [stdout]     |               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
[INFO] [stdout]     = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
[INFO] [stdout]     = note: this compiler was built on 2026-06-16; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]   --> src/error/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use thiserror::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]  --> src/parser/pattern.rs:5:49
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::{CompileError, CompileResult, Span};
[INFO] [stdout]   |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `expr::*`
[INFO] [stdout]   --> src/parser/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use expr::*;
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pattern::*`
[INFO] [stdout]   --> src/parser/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use pattern::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::*`
[INFO] [stdout]   --> src/parser/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use types::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypeVar`
[INFO] [stdout]  --> src/types/infer.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::{Type, TypeVar, Scheme, TypeEnv, Substitution, TypeChecker};
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypeVar`
[INFO] [stdout]  --> src/types/unify.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::ty::{Type, TypeVar};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Type`
[INFO] [stdout]  --> src/types/env.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::ty::{Type, TypeVar, Scheme};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `infer::*`
[INFO] [stdout]   --> src/types/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use infer::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]   --> src/types/mod.rs:21:62
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::error::{CompileError, CompileResult, Diagnostics, Span};
[INFO] [stdout]    |                                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Type`
[INFO] [stdout]  --> src/codegen/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::Type;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::TypeEnv`
[INFO] [stdout]    --> src/codegen/mod.rs:564:9
[INFO] [stdout]     |
[INFO] [stdout] 564 |     use crate::types::TypeEnv;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_span`
[INFO] [stdout]    --> src/parser/expr.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |                 let start_span = self.previous_span();
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_span`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest_name`
[INFO] [stdout]    --> src/parser/expr.rs:587:17
[INFO] [stdout]     |
[INFO] [stdout] 587 |             let rest_name = self.parse_ident()?;
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rest_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `span`
[INFO] [stdout]    --> src/parser/expr.rs:826:13
[INFO] [stdout]     |
[INFO] [stdout] 826 |         let span = start.merge(else_branch.span);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `span`
[INFO] [stdout]    --> src/types/infer.rs:385:49
[INFO] [stdout]     |
[INFO] [stdout] 385 |     fn infer_list(&mut self, elements: &[Expr], span: Span, env: &mut TypeEnv) -> CompileResult<(Type, Substitution)> {
[INFO] [stdout]     |                                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `int_binop`
[INFO] [stdout]    --> src/types/mod.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let int_binop = Scheme::mono(Type::function(
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_binop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmp_type`
[INFO] [stdout]    --> src/types/mod.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let cmp_type = Scheme::new(
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cmp_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `string_concat`
[INFO] [stdout]    --> src/types/mod.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let string_concat = Scheme::mono(Type::function(
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_concat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param`
[INFO] [stdout]    --> src/codegen/mod.rs:659:32
[INFO] [stdout]     |
[INFO] [stdout] 659 |             ExprKind::Lambda { param, body } => {
[INFO] [stdout]     |                                ^^^^^ help: try ignoring the field: `param: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/codegen/mod.rs:659:39
[INFO] [stdout]     |
[INFO] [stdout] 659 |             ExprKind::Lambda { param, body } => {
[INFO] [stdout]     |                                       ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typed`
[INFO] [stdout]   --> src/lib.rs:99:14
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let (typed, diagnostics) = type_check(&program);
[INFO] [stdout]    |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_typed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/lib.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 |         let (program, diagnostics) = parse(source);
[INFO] [stdout]     |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0658`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `compidotspeed` (lib) due to 6 previous errors; 23 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `start_span`
[INFO] [stdout]    --> src/parser/expr.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |                 let start_span = self.previous_span();
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_span`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest_name`
[INFO] [stdout]    --> src/parser/expr.rs:587:17
[INFO] [stdout]     |
[INFO] [stdout] 587 |             let rest_name = self.parse_ident()?;
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rest_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `span`
[INFO] [stdout]    --> src/parser/expr.rs:826:13
[INFO] [stdout]     |
[INFO] [stdout] 826 |         let span = start.merge(else_branch.span);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `span`
[INFO] [stdout]    --> src/types/infer.rs:385:49
[INFO] [stdout]     |
[INFO] [stdout] 385 |     fn infer_list(&mut self, elements: &[Expr], span: Span, env: &mut TypeEnv) -> CompileResult<(Type, Substitution)> {
[INFO] [stdout]     |                                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `int_binop`
[INFO] [stdout]    --> src/types/mod.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let int_binop = Scheme::mono(Type::function(
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_int_binop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmp_type`
[INFO] [stdout]    --> src/types/mod.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let cmp_type = Scheme::new(
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cmp_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `string_concat`
[INFO] [stdout]    --> src/types/mod.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let string_concat = Scheme::mono(Type::function(
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_concat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param`
[INFO] [stdout]    --> src/codegen/mod.rs:659:32
[INFO] [stdout]     |
[INFO] [stdout] 659 |             ExprKind::Lambda { param, body } => {
[INFO] [stdout]     |                                ^^^^^ help: try ignoring the field: `param: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/codegen/mod.rs:659:39
[INFO] [stdout]     |
[INFO] [stdout] 659 |             ExprKind::Lambda { param, body } => {
[INFO] [stdout]     |                                       ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typed`
[INFO] [stdout]   --> src/lib.rs:99:14
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let (typed, diagnostics) = type_check(&program);
[INFO] [stdout]    |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_typed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/lib.rs:162:14
[INFO] [stdout]     |
[INFO] [stdout] 162 |         let (program, diagnostics) = parse(source);
[INFO] [stdout]     |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0658`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `compidotspeed` (lib test) due to 6 previous errors; 21 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e", kill_on_drop: false }`
[INFO] [stdout] 64592efda91f8d2cb3eac1cca929fe55231f5e30d20baab89a2b7e4d18088c0e
